export default {};

// 出生年月日
exports.birth =
  /^(19|20)\d{2}\-((0?[1-9])|(1[0-2]))\-((0?[1-9])|([1-2]\d)|3[01])$/;

// 日期格式，已考虑平闰年：yyyy-mm-dd
exports.yyyymmdd = /^[1-2][0-9][0-9][0-9]-[0-1]{0,1}[0-9]-[0-3]{0,1}[0-9]$/;

// 日期格式，已考虑平闰年：yyyyMMdd
exports.yyyyMMdd =
  /^(?:(?!0000)[0-9]{4}(?:(?:0[1-9]|1[0-2])(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])(?:29|30)|(?:0[13578]|1[02])31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)0229)$/;

// 日期正则，简单判定，未做月份及日期的判定
exports.simpleDate = /^\d{4}(\-)\d{1,2}\1\d{1,2}$/;

// 日期正则，复杂判定
exports.complexDate =
  /^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$/;

// 月份，格式："01"-"09"和"1"-"12"
exports.month = /^(0?[1-9]|1[0-2])$/;

// 一个月的31天，格式：01、09和1、31
exports.day = /^((0?[1-9])|((1|2)[0-9])|30|31)$/;

// 12小时制，hh:mm:ss
exports.hours12 = /^(?:1[0-2]|0?[1-9]):[0-5]\d:[0-5]\d$/;

// 24小时制，hh:mm:ss
exports.hours24 = /^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d$/;
